home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 142
/
Gekkan Dennou Club - 2000.3 Vol. 142 (Japan).7z
/
Gekkan Dennou Club - 2000.3 Vol. 142 (Japan) (Track 1).bin
/
tools
/
s_tool
/
picsave.s
< prev
next >
Wrap
Text File
|
1997-10-26
|
34KB
|
2,166 lines
.include doscall.mac
.include iocscall.mac
.xref _DataX
L000014:
.dc.b '$Id: picsave.ap,v 2.0.0.5 1995/09/26 01:03:23 GORRY Exp GOR'
.dc.b 'RY $',$00
_PICSAVE_::
clr.w -(sp)
bra L00005a
_M_PICSAVE_::
st.b -(sp)
L00005a:
movem.l d1-d7/a0-a6,-(sp)
lea.l $003e(sp),a0
link.w a5,#-2368
lea.l -$0940(a5),a5
lea.l L00017a(pc),a1
move.l a5,(a1)
clr.l -(sp)
DOS _SUPER
move.l d0,(sp)
bsr L000092
move.l d0,d1
tst.l (sp)
bmi L000080
DOS _SUPER
L000080:
addq.w #4,sp
move.l d1,d0
lea.l $0940(a5),a5
unlk a5
movem.l (sp)+,d1-d7/a0-a6
addq.w #2,sp
rts
L000092:
move.l sp,$0816(a5)
move.w -$0006(a0),d0
move.l (a0)+,$0802(a5)
move.l (a0)+,$080a(a5)
move.l (a0)+,$0824(a5)
move.l (a0)+,$0828(a5)
move.l (a0)+,$082c(a5)
move.l (a0)+,$0830(a5)
move.l (a0)+,$0812(a5)
move.l (a0)+,$0806(a5)
move.l (a0)+,$081a(a5)
move.l (a0)+,$081e(a5)
tst.w d0
sne.b $083d(a5)
bsr L0003e4
bsr L0002d2
tst.b $083d(a5)
bne L0000ea
move.w #$0020,-(sp) ;' '
move.l $080a(a5),-(sp)
DOS _CREATE
addq.w #6,sp
tst.l d0
bmi L000148
move.w d0,$0822(a5)
L0000ea:
tst.b $083d(a5)
bne L0000fc
cmpi.l #$00000080,$081a(a5)
bcs L000924
L0000fc:
movea.l $0806(a5),a6
move.l $081a(a5),d6
moveq.l #$10,d7
moveq.l #$00,d5
move.w $0822(a5),-(sp)
pea.l L00093c(pc)
bsr L0008a6
addq.w #6,sp
bsr L00017e
moveq.l #$1a,d0
bsr L00085e
moveq.l #$00,d0
bsr L00085e
moveq.l #$00,d0
bsr L000882
moveq.l #$0f,d0
bsr L000882
move.w $0834(a5),d0
bsr L000882
move.w $0836(a5),d0
bsr L000882
bsr L000402
bsr L00042e
L000148:
movea.l L00017a(pc),a5
move.b $083c(a5),$00e80028
movea.l $0816(a5),sp
move.l d0,-(sp)
tst.b $083d(a5)
beq L00016e
move.l $081a(a5),d0
sub.l d6,d0
movea.l $080a(a5),a0
move.l d0,(a0)
bra L000176
L00016e:
move.w $0822(a5),-(sp)
DOS _CLOSE
addq.w #2,sp
L000176:
move.l (sp)+,d0
rts
L00017a:
.dc.l $00000000
L00017e:
move.w $0822(a5),-(sp)
move.l $081e(a5),d2
btst.l #$00,d2
bne L000230
pea.l L00023e(pc)
bsr L0008a6
addq.w #4,sp
clr.b $083e(a5)
pea.l $083e(a5)
clr.l -(sp)
pea.l L000246(pc)
DOS _GETENV
lea.l $000c(sp),sp
tst.l d0
bne L0001c2
pea.l L000242(pc)
bsr L0008a6
addq.w #4,sp
lea.l $083e(a5),a0
bsr L00025c
L0001c2:
pea.l L00024b(pc)
bsr L0008a6
addq.w #4,sp
move.l $0824(a5),d1
bpl L0001d4
moveq.l #$00,d1
L0001d4:
bsr L000286
move.l $0828(a5),d1
bpl L0001e0
moveq.l #$00,d1
L0001e0:
bsr L000286
btst.l #$02,d2
beq L0001f2
btst.l #$10,d2
beq L000208
bra L0001fe
L0001f2:
move.w $00e80028,d1
btst.l #$04,d1
bne L000208
L0001fe:
pea.l L00024f(pc)
bsr L0008a6
addq.w #4,sp
L000208:
btst.l #$02,d2
beq L000216
btst.l #$11,d2
beq L000226
bra L00021c
L000216:
btst.l #$01,d1
beq L000226
L00021c:
pea.l L000254(pc)
bsr L0008a6
addq.w #4,sp
L000226:
pea.l L000259(pc)
bsr L0008a6
addq.w #4,sp
L000230:
move.l $0812(a5),d0
beq L00023a
movea.l d0,a0
bsr L00025c
L00023a:
addq.w #2,sp
rts
L00023e:
.dc.b '/MM',$00
L000242:
.dc.b '/AU',$00
L000246:
.dc.b 'USER',$00
L00024b:
.dc.b '/XY',$00
L00024f:
.dc.b '/XFL',$00
L000254:
.dc.b '/XSS',$00
L000259:
.dc.b $2f,$3a,$00
L00025c:
movem.l d1/a1,-(sp)
movea.l a0,a1
L000262:
move.b (a0)+,d1
beq L000272
cmpi.b #$1a,d1
bne L000270
clr.b -(a0)
bra L000272
L000270:
bra L000262
L000272:
move.w $0822(a5),-(sp)
move.l a1,-(sp)
bsr L0008a6
addq.w #6,sp
move.b d1,(a0)
movem.l (sp)+,d1/a1
rts
L000286:
movem.l d0-d3/a0,-(sp)
move.w $0822(a5),-(sp)
lea.l L0002ca(pc),a0
moveq.l #$03,d3
L000294:
divu.w (a0)+,d1
addi.b #$30,d1 ;'0'
moveq.l #$00,d0
move.b d1,d0
subq.w #8,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L0002ba
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0002b6
bsr L0008fc
L0002b6:
clr.w d5
swap.w d5
L0002ba:
clr.w d1
swap.w d1
dbra d3,L000294
addq.w #2,sp
movem.l (sp)+,d0-d3/a0
rts
L0002ca:
.dc.b $03,$e8,$00,$64,$00,$0a,$00,$01
L0002d2:
move.l d7,-(sp)
move.l $081e(a5),d7
move.l $082c(a5),d1
bpl L0002f0
btst.l #$0f,d7
bne L00092a
move.l #$000001ff,d1
move.l d1,$082c(a5)
L0002f0:
move.l $0824(a5),d0
bpl L000304
btst.l #$0f,d7
bne L00092a
moveq.l #$00,d0
move.l d0,$0824(a5)
L000304:
cmp.l d0,d1
bcc L000312
exg.l d0,d1
move.l d0,$0824(a5)
move.l d1,$082c(a5)
L000312:
btst.l #$0f,d7
bne L00032e
cmpi.w #$0200,d1
bcc L00092a
sub.l d0,d1
addq.l #1,d1
cmpi.w #$0200,d1
bhi L00092a
bra L000332
L00032e:
sub.l d0,d1
addq.l #1,d1
L000332:
move.w d1,$0834(a5)
move.l $0830(a5),d1
bpl L00034e
btst.l #$0f,d7
bne L00092a
move.l #$000001ff,d1
move.l d1,$0830(a5)
L00034e:
move.l $0828(a5),d0
bpl L000362
btst.l #$0f,d7
bne L00092a
moveq.l #$00,d0
move.l d0,$0828(a5)
L000362:
cmp.l d0,d1
bcc L000370
exg.l d0,d1
move.l d0,$0828(a5)
move.l d1,$0830(a5)
L000370:
btst.l #$0f,d7
bne L00038c
cmpi.w #$0200,d1
bcc L00092a
sub.l d0,d1
addq.l #1,d1
cmpi.w #$0200,d1
bhi L00092a
bra L000390
L00038c:
sub.l d0,d1
addq.l #1,d1
L000390:
move.w d1,$0836(a5)
move.w #$0400,$083a(a5)
btst.l #$0f,d7
beq L0003b6
* move.w $0834(a5),d0
* addq.w #7,d0
* andi.w #$fff8,d0
* add.w d0,d0
* cmp.w $083a(a5),d0
* bls L0003b6
* move.w d0,$083a(a5)
move.l _DataX,d0 ******TNB
add.l d0,d0
move.w d0,$083a(a5) ******TNB
L0003b6:
move.l $0828(a5),d0
mulu.w $083a(a5),d0
move.l $0824(a5),d1
ext.l d1
add.l d1,d1
add.l d1,d0
add.l $0802(a5),d0
move.l d0,$080e(a5)
move.w $0834(a5),d0
add.w d0,d0
move.w $083a(a5),d1
sub.w d0,d1
move.w d1,$0838(a5)
move.l (sp)+,d7
rts
L0003e4:
move.b $00e80028,$083c(a5)
cmpi.b #$03,$00e82401
bne L000930
move.b #$03,$00e80028
rts
L000402:
movea.l a5,a0
moveq.l #$00,d0
moveq.l #$f8,d1
moveq.l #$08,d2
moveq.l #$00,d3
moveq.l #$7f,d4
L00040e:
move.w d0,(a0)+
move.w d1,(a0)+
move.w d2,(a0)+
move.w d3,(a0)+
addq.w #8,d1
addq.w #8,d2
dbra d4,L00040e
move.w #$03f8,$0002(a5)
move.w d3,-$0004(a0)
move.w d3,$0800(a5)
rts
L00042e:
movea.l $080e(a5),a4
bsr L000704
moveq.l #$00,d2
move.w (a4),d2
not.w d2
moveq.l #$ff,d3
move.w $0836(a5),d0
subq.w #1,d0
L000444:
move.w d0,-(sp)
moveq.l #$00,d4
move.w $0834(a5),d4
subq.w #1,d4
L00044e:
addq.l #1,d3
move.w (a4)+,d2
bclr.l #$00,d2
dbne d4,L00044e
beq L0006ee
bsr L00075c
lea.l -$0008(a5),a0
moveq.l #$7f,d0
L000468:
addq.w #8,a0
cmp.w (a0),d2
dbeq d0,L000468
bne L0004d6
eori.w #$007f,d0
moveq.l #$00,d1
move.b d0,d1
ori.b #$80,d1
subq.w #8,d7
rol.l d7,d1
or.l d1,d5
tst.w d7
bpl L00049a
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000496
bsr L0008fc
L000496:
clr.w d5
swap.w d5
L00049a:
lsl.w #3,d0
lea.l $00(a5,d0.w),a0
cmp.w $0800(a5),d0
beq L0004d2
move.w $0002(a0),d1
move.w $0004(a0),d2
move.w d1,$02(a5,d2.w)
move.w d2,$04(a5,d1.w)
move.w $0800(a5),d1
move.w $04(a5,d1.w),d2
move.w d1,$0002(a0)
move.w d2,$0004(a0)
move.w d0,$02(a5,d2.w)
move.w d0,$04(a5,d1.w)
move.w d0,$0800(a5)
L0004d2:
move.w (a0),d2
bra L00050a
L0004d6:
moveq.l #$00,d0
move.w d2,d0
lsr.w #1,d0
sub.w #$0010,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L0004fa
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0004f6
bsr L0008fc
L0004f6:
clr.w d5
swap.w d5
L0004fa:
move.w $0800(a5),d0
move.w $04(a5,d0.w),d0
move.w d0,$0800(a5)
move.w d2,$00(a5,d0.w)
L00050a:
move.w (sp),d0
move.w d4,-(sp)
movea.l a4,a3
move.w d2,-(a3)
dbra d0,L00051a
bra L0006d4
L00051a:
move.w d2,d1
addq.w #1,d1
movea.w $0834(a5),a0
adda.w $083a(a5),a3
cmp.w (a3),d1
bne L000542
dbra d7,L00053c
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L00053a
bsr L0008fc
L00053a:
moveq.l #$00,d5
L00053c:
bset.l d7,d5
bra L0005e4
L000542:
subq.w #2,a3
addq.w #1,d4
cmp.w a0,d4
bge L000566
cmp.w (a3),d1
bne L000566
dbra d7,L000560
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L00055e
bsr L0008fc
L00055e:
moveq.l #$00,d5
L000560:
bset.l d7,d5
bra L000610
L000566:
addq.w #4,a3
subq.w #2,d4
bcs L000588
cmp.w (a3),d1
bne L000588
dbra d7,L000582
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000580
bsr L0008fc
L000580:
moveq.l #$00,d5
L000582:
bset.l d7,d5
bra L00063a
L000588:
subq.w #6,a3
addq.w #3,d4
cmp.w a0,d4
bge L0005ac
cmp.w (a3),d1
bne L0005ac
dbra d7,L0005a6
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0005a4
bsr L0008fc
L0005a4:
moveq.l #$00,d5
L0005a6:
bset.l d7,d5
bra L000668
L0005ac:
addq.w #8,a3
subq.w #4,d4
bcs L0005ce
cmp.w (a3),d1
bne L0005ce
dbra d7,L0005c8
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0005c6
bsr L0008fc
L0005c6:
moveq.l #$00,d5
L0005c8:
bset.l d7,d5
bra L000694
L0005ce:
bra L0006d4
L0005d2:
move.w d2,(a3)
dbra d0,L0005dc
bra L0006b6
L0005dc:
adda.w $083a(a5),a3
cmp.w (a3),d1
bne L000604
L0005e4:
moveq.l #$02,d3
subq.w #2,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L000602
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0005fe
bsr L0008fc
L0005fe:
clr.w d5
swap.w d5
L000602:
bra L0005d2
L000604:
subq.w #2,a3
addq.w #1,d4
cmp.w a0,d4
bge L000630
cmp.w (a3),d1
bne L000630
L000610:
moveq.l #$01,d3
subq.w #2,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L00062e
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L00062a
bsr L0008fc
L00062a:
clr.w d5
swap.w d5
L00062e:
bra L0005d2
L000630:
addq.w #4,a3
subq.w #2,d4
bcs L00065c
cmp.w (a3),d1
bne L00065c
L00063a:
moveq.l #$03,d3
subq.w #2,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L000658
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000654
bsr L0008fc
L000654:
clr.w d5
swap.w d5
L000658:
bra L0005d2
L00065c:
subq.w #6,a3
addq.w #3,d4
cmp.w a0,d4
bge L00068a
cmp.w (a3),d1
bne L00068a
L000668:
moveq.l #$02,d3
subq.w #4,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L000686
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000682
bsr L0008fc
L000682:
clr.w d5
swap.w d5
L000686:
bra L0005d2
L00068a:
addq.w #8,a3
subq.w #4,d4
bcs L0006b6
cmp.w (a3),d1
bne L0006b6
L000694:
moveq.l #$03,d3
subq.w #4,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L0006b2
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0006ae
bsr L0008fc
L0006ae:
clr.w d5
swap.w d5
L0006b2:
bra L0005d2
L0006b6:
moveq.l #$00,d3
subq.w #2,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L0006d4
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0006d0
bsr L0008fc
L0006d0:
clr.w d5
swap.w d5
L0006d4:
dbra d7,L0006e6
moveq.l #$0f,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0006e4
bsr L0008fc
L0006e4:
moveq.l #$00,d5
L0006e6:
move.w (sp)+,d4
moveq.l #$ff,d3
dbra d4,L00044e
L0006ee:
adda.w $0838(a5),a4
move.w (sp)+,d0
dbra d0,L000444
addq.l #1,d3
bsr L00075c
bsr L0008d4
moveq.l #$00,d0
rts
L000704:
move.l a4,-(sp)
moveq.l #$fe,d3
move.w (a4),d2
and.w d3,d2
not.w d2
move.w $0836(a5),d1
subq.w #1,d1
L000714:
move.w $0834(a5),d4
lsr.w #1,d4
bcc L00072a
move.w (a4),d0
and.w d3,d0
cmp.w d2,d0
beq L000728
move.w d0,d2
addq.w #1,d0
L000728:
move.w d0,(a4)+
L00072a:
dbra d4,L000730
bra L000750
L000730:
move.w (a4),d0
and.w d3,d0
cmp.w d2,d0
beq L00073c
move.w d0,d2
addq.w #1,d0
L00073c:
move.w d0,(a4)+
move.w (a4),d0
and.w d3,d0
cmp.w d2,d0
beq L00074a
move.w d0,d2
addq.w #1,d0
L00074a:
move.w d0,(a4)+
dbra d4,L000730
L000750:
adda.w $0838(a5),a4
dbra d1,L000714
movea.l (sp)+,a4
rts
L00075c:
moveq.l #$02,d0
cmp.l d0,d3
bcc L000780
subq.w #2,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L00077e
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L00077a
bsr L0008fc
L00077a:
clr.w d5
swap.w d5
L00077e:
rts
L000780:
moveq.l #$06,d1
L000782:
cmp.l d1,d3
bcs L00078c
addq.w #1,d0
bset.l d0,d1
bra L000782
L00078c:
bclr.l d0,d1
sub.l d1,d3
cmpi.w #$0011,d0
bcc L0007d0
sub.w d0,d7
rol.l d7,d1
or.l d1,d5
tst.w d7
bpl L0007b2
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0007ae
bsr L0008fc
L0007ae:
clr.w d5
swap.w d5
L0007b2:
sub.w d0,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L0007ce
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0007ca
bsr L0008fc
L0007ca:
clr.w d5
swap.w d5
L0007ce:
rts
L0007d0:
sub.w #$0010,d0
move.w d1,-(sp)
clr.w d1
swap.w d1
sub.w d0,d7
rol.l d7,d1
or.l d1,d5
tst.w d7
bpl L0007f6
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0007f2
bsr L0008fc
L0007f2:
clr.w d5
swap.w d5
L0007f6:
moveq.l #$00,d1
move.w (sp)+,d1
sub.w #$0010,d7
rol.l d7,d1
or.l d1,d5
tst.w d7
bpl L000818
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000814
bsr L0008fc
L000814:
clr.w d5
swap.w d5
L000818:
move.w d3,-(sp)
clr.w d3
swap.w d3
sub.w d0,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L00083a
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000836
bsr L0008fc
L000836:
clr.w d5
swap.w d5
L00083a:
moveq.l #$00,d3
move.w (sp)+,d3
sub.w #$0010,d7
rol.l d7,d3
or.l d3,d5
tst.w d7
bpl L00085c
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L000858
bsr L0008fc
L000858:
clr.w d5
swap.w d5
L00085c:
rts
L00085e:
andi.l #$000000ff,d0
subq.w #8,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L000880
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L00087c
bsr L0008fc
L00087c:
clr.w d5
swap.w d5
L000880:
rts
L000882:
andi.l #$0000ffff,d0
sub.w #$0010,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L0008a4
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0008a0
bsr L0008fc
L0008a0:
clr.w d5
swap.w d5
L0008a4:
rts
L0008a6:
move.l a0,-(sp)
movea.l $0008(sp),a0
bra L0008c8
L0008ae:
subq.w #8,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L0008c8
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0008c4
bsr L0008fc
L0008c4:
clr.w d5
swap.w d5
L0008c8:
moveq.l #$00,d0
move.b (a0)+,d0
bne L0008ae
movea.l (sp)+,a0
moveq.l #$00,d0
rts
L0008d4:
moveq.l #$00,d0
sub.w #$0010,d7
rol.l d7,d0
or.l d0,d5
tst.w d7
bpl L0008f2
add.w #$0010,d7
move.w d5,(a6)+
subq.l #2,d6
bne L0008ee
bsr L0008fc
L0008ee:
clr.w d5
swap.w d5
L0008f2:
tst.b $083d(a5)
bne L0008fa
bsr L0008fc
L0008fa:
rts
L0008fc:
tst.b $083d(a5)
bne L000936
move.l d0,-(sp)
movea.l $0806(a5),a6
move.l $081a(a5),-(sp)
sub.l d6,(sp)
move.l a6,-(sp)
move.w $0822(a5),-(sp)
DOS _WRITE
addq.w #6,sp
cmp.l (sp)+,d0
bne L000936
move.l $081a(a5),d6
move.l (sp)+,d0
rts
L000924:
moveq.l #$86,d0
bra L000148
L00092a:
moveq.l #$87,d0
bra L000148
L000930:
moveq.l #$94,d0
bra L000148
L000936:
moveq.l #$e9,d0
bra L000148
L00093c:
.dc.b 'PIC',$00
L000940:
.dc.b '$Id: picload.ap,v 2.0.0.4 1995/06/01 01:54:01 GORRY Exp GOR'
.dc.b 'RY $',$00
_PICLOAD_::
clr.w -(sp)
bra L000986
_M_PICLOAD_::
st.b -(sp)
L000986:
movem.l d1-d7/a0-a6,-(sp)
lea.l $003e(sp),a0
link.w a5,#-10326
lea.l -$2856(a5),a5
lea.l L000af0(pc),a1
move.l a5,(a1)
clr.l -(sp)
DOS _SUPER
move.l d0,(sp)
bsr L0009be
move.l d0,d1
tst.l (sp)
bmi L0009ac
DOS _SUPER
L0009ac:
addq.w #4,sp
move.l d1,d0
lea.l $2856(a5),a5
unlk a5
movem.l (sp)+,d1-d7/a0-a6
addq.w #2,sp
rts
L0009be:
move.l sp,$0812(a5)
move.w -$0006(a0),d0
move.l (a0)+,$0802(a5)
move.l (a0)+,$080a(a5)
move.l (a0)+,$0820(a5)
move.l (a0)+,$0824(a5)
move.l (a0)+,$0806(a5)
move.l (a0)+,$0816(a5)
move.l (a0)+,$081a(a5)
tst.w d0
sne.b $083b(a5)
tst.b $083b(a5)
bne L000a02
clr.w -(sp)
move.l $080a(a5),-(sp)
DOS _OPEN
addq.w #6,sp
tst.l d0
bmi L000aa2
move.w d0,$081e(a5)
L000a02:
tst.b $083b(a5)
bne L000a14
cmpi.l #$00000080,$0816(a5)
bcs L001496
L000a14:
moveq.l #$00,d6
moveq.l #$00,d7
clr.b $083a(a5)
tst.b $083b(a5)
beq L000a32
movea.l $0806(a5),a6
move.l $0816(a5),d6
addq.l #1,d6
andi.l #$ffffffff,d6
L000a32:
bsr L00133c
cmpi.b #$50,d0 ;'P'
bne L00149c
bsr L00133c
cmpi.b #$49,d0 ;'I'
bne L00149c
bsr L00133c
cmpi.b #$43,d0 ;'C'
bne L00149c
bsr L000af4
L000a5a:
bsr L00133c
tst.b d0
bne L000a5a
bsr L001356
move.w d0,$0838(a5)
bsr L001356
cmpi.w #$000f,d0
bne L00149c
bsr L001356
move.w d0,$0828(a5)
bsr L001356
move.w d0,$082a(a5)
bsr L000d08
moveq.l #$00,d0
tst.l $081a(a5)
bmi L000aa2
bsr L000e42
bsr L0010cc
bsr L0010f8
bsr L0013ac
L000aa2:
movea.l L000af0(pc),a5
movea.l $0812(a5),sp
move.l d0,-(sp)
movea.l $0806(a5),a0
tst.b $083b(a5)
beq L000aba
movea.l $080a(a5),a0
L000aba:
moveq.l #$00,d0
move.l $0820(a5),(a0)
move.l $0824(a5),$0004(a0)
move.w $0828(a5),d0
move.l d0,$0008(a0)
move.w $082a(a5),d0
move.l d0,$000c(a0)
move.l #$00008000,$0010(a0)
tst.b $083b(a5)
bne L000aec
move.w $081e(a5),-(sp)
DOS _CLOSE
addq.w #2,sp
L000aec:
move.l (sp)+,d0
rts
L000af0:
.dc.l $00000000
L000af4:
movem.l d1-d3/a0-a2,-(sp)
clr.b $0842(a5)
clr.b $2842(a5)
clr.b $083c(a5)
clr.b $083d(a5)
clr.b $083e(a5)
clr.b $083f(a5)
clr.b $0840(a5)
moveq.l #$00,d0
bsr L00133c
cmpi.b #$1a,d0
beq L000c26
move.l $081a(a5),d1
btst.l #$03,d1
bne L000c26
cmpi.b #$2f,d0 ;'/'
bne L000c26
L000b36:
bsr L00133c
cmp.b #$3a,d0 ;':'
bne L000b4a
bsr L00133c
bra L000c26
L000b48:
bra L000b50
L000b4a:
cmp.b #$4d,d0 ;'M'
bne L000b84
L000b50:
bsr L00133c
cmp.b #$4b,d0 ;'K'
bne L000b60
st.b $083c(a5)
bra L000b80
L000b60:
cmp.b #$59,d0 ;'Y'
bne L000b6c
st.b $083c(a5)
bra L000b80
L000b6c:
cmp.b #$48,d0 ;'H'
bne L000b80
bsr L00133c
cmpi.b #$59,d0 ;'Y'
bne L000b80
st.b $083e(a5)
L000b80:
bra L000c10
L000b84:
cmp.b #$58,d0 ;'X'
bne L000be8
bsr L00133c
cmp.b #$53,d0 ;'S'
bne L000ba4
bsr L00133c
cmpi.b #$53,d0 ;'S'
bne L000ba2
st.b $083f(a5)
L000ba2:
bra L000be6
L000ba4:
cmp.b #$46,d0 ;'F'
bne L000bba
bsr L00133c
cmpi.b #$4c,d0 ;'L'
bne L000bb8
st.b $0840(a5)
L000bb8:
bra L000be6
L000bba:
cmp.b #$59,d0 ;'Y'
bne L000be6
bsr L000cda
moveq.l #$00,d1
divu.w #$2710,d0
tst.l $0820(a5)
bpl L000bd6
move.w d0,d1
move.l d1,$0820(a5)
L000bd6:
swap.w d0
tst.l $0824(a5)
bpl L000be4
move.w d0,d1
move.l d1,$0824(a5)
L000be4:
moveq.l #$2f,d0
L000be6:
bra L000c10
L000be8:
cmp.b #$41,d0 ;'A'
bne L000c10
bsr L00133c
cmpi.b #$55,d0 ;'U'
bne L000c10
lea.l $2842(a5),a0
moveq.l #$10,d1
L000bfe:
bsr L00133c
cmpi.b #$2f,d0 ;'/'
beq L000c0e
move.b d0,(a0)+
dbra d1,L000bfe
L000c0e:
clr.b (a0)
L000c10:
cmpi.b #$2f,d0 ;'/'
beq L000c22
cmpi.b #$1a,d0
beq L000c26
bsr L00133c
bra L000c10
L000c22:
bra L000b36
L000c26:
lea.l $0842(a5),a2
move.l #$00001ffc,d3
move.l d0,-(sp)
move.l $081a(a5),d0
btst.l #$04,d0
bne L000ca6
movea.l $080a(a5),a0
movea.l a0,a1
L000c42:
move.b (a0)+,d0
beq L000c5c
cmpi.b #$3a,d0 ;':'
beq L000c58
cmpi.b #$2f,d0 ;'/'
beq L000c58
cmpi.b #$5c,d0 ;'\'
bne L000c5a
L000c58:
movea.l a0,a1
L000c5a:
bra L000c42
L000c5c:
moveq.l #$17,d2
L000c5e:
moveq.l #$00,d0
move.b (a1)+,d0
beq L000c6c
move.b d0,(a2)+
subq.w #1,d2
subq.w #1,d3
bra L000c5e
L000c6c:
tst.w d2
bmi L000c7a
L000c70:
move.b #$20,(a2)+ ;' '
subq.w #1,d3
dbra d2,L000c70
L000c7a:
move.b #$3a,(a2)+ ;':'
move.b #$20,(a2)+ ;' '
subq.w #2,d3
lea.l $2842(a5),a0
moveq.l #$11,d2
L000c8a:
moveq.l #$00,d0
move.b (a0)+,d0
beq L000c98
move.b d0,(a2)+
subq.w #1,d2
subq.w #1,d3
bra L000c8a
L000c98:
tst.w d2
bmi L000ca6
L000c9c:
move.b #$20,(a2)+ ;' '
subq.w #1,d3
dbra d2,L000c9c
L000ca6:
move.l (sp)+,d0
moveq.l #$00,d2
cmpi.b #$1a,d0
beq L000cc6
L000cb0:
move.b d0,(a2)+
cmpi.b #$0a,d0
seq.b d2
subq.w #1,d3
bmi L000cc6
bsr L00133c
cmpi.b #$1a,d0
bne L000cb0
L000cc6:
tst.b d2
bne L000cd2
move.b #$0d,(a2)+
move.b #$0a,(a2)+
L000cd2:
clr.b (a2)
movem.l (sp)+,d1-d3/a0-a2
rts
L000cda:
movem.l d1-d2,-(sp)
moveq.l #$00,d2
moveq.l #$00,d1
L000ce2:
bsr L00133c
subi.b #$30,d0 ;'0'
bmi L000d00
cmpi.b #$0a,d0
bcc L000d00
move.b d0,d1
add.l d2,d2
move.l d2,d0
lsl.l #2,d2
add.l d0,d2
add.l d1,d2
bra L000ce2
L000d00:
move.l d2,d0
movem.l (sp)+,d1-d2
rts
L000d08:
move.l d7,-(sp)
move.w $0838(a5),d0
beq L000d20
cmpi.w #$0052,d0 ;'R'
beq L000d20
cmpi.w #$00c2,d0
beq L000d20
bra L00149c
L000d20:
move.l $0820(a5),d0
bpl L000d2c
moveq.l #$00,d0
move.l d0,$0820(a5)
L000d2c:
move.l $0824(a5),d0
bpl L000d38
moveq.l #$00,d0
move.l d0,$0824(a5)
L000d38:
move.w #$0400,$0832(a5)
move.w #$0200,$082e(a5)
move.w #$0200,$0830(a5)
move.w #$010c,$0836(a5)
move.w #$0003,$0834(a5)
cmpi.w #$0052,$0838(a5) ;'R'
beq L000d66
cmpi.w #$00c2,$0838(a5)
bne L000d6c
L000d66:
move.w #$0110,$0836(a5)
L000d6c:
tst.b $083f(a5)
beq L000d78
move.w #$0110,$0836(a5)
L000d78:
tst.b $0840(a5)
beq L000d82
addq.w #1,$0836(a5)
L000d82:
move.l $081a(a5),d7
btst.l #$0f,d7
beq L000da2
* move.w $0828(a5),d0
* addq.w #7,d0
* andi.w #$fff8,d0
* add.w d0,d0
* cmp.w $0832(a5),d0
* ble L000da2
* move.w d0,$0832(a5)
move.l _DataX,d0 ******TNB
add.l d0,d0
move.w d0,$0832(a5) ******TNB
L000da2:
move.l $0820(a5),d0
btst.l #$0f,d7
bne L000db4
cmp.w $082e(a5),d0
bcc L0014a2
L000db4:
move.w $0828(a5),d1
tst.b $083c(a5)
beq L000dc0
add.w d1,d1
L000dc0:
add.w d1,d0
btst.l #$0f,d7
bne L000dd0
cmp.w $082e(a5),d0
bhi L0014a2
L000dd0:
move.l $0824(a5),d0
btst.l #$0f,d7
bne L000de2
cmp.w $0830(a5),d0
bcc L0014a2
L000de2:
move.w $082a(a5),d1
tst.b $083c(a5)
bne L000df2
tst.b $083d(a5)
beq L000df4
L000df2:
add.w d1,d1
L000df4:
tst.b $083e(a5)
beq L000e04
mulu.w #$0200,d1
divu.w #$01a8,d1
ext.l d1
L000e04:
add.w d1,d0
btst.l #$0f,d7
bne L000e14
cmp.w $0830(a5),d0
bhi L0014a2
L000e14:
move.l $0824(a5),d0
mulu.w $0832(a5),d0
move.l $0820(a5),d1
ext.l d1
add.l d1,d0
add.l d1,d0
add.l $0802(a5),d0
move.l d0,$080e(a5)
move.w $0828(a5),d0
add.w d0,d0
move.w $0832(a5),d1
sub.w d0,d1
move.w d1,$082c(a5)
move.l (sp)+,d7
rts
L000e42:
movem.l d0-d7/a0-a6,-(sp)
move.l $081a(a5),d7
btst.l #$0f,d7
beq L000e5a
move.w $0834(a5),d0
move.b d0,$00e80028
L000e5a:
btst.l #$00,d7
bne L000efc
move.w #$0002,-(sp)
move.w #$000a,-(sp)
DOS _CONCTRL
addq.w #4,sp
lea.l $00e82000,a0
move.w #$007f,d0
move.w #$0001,d1
L000e7c:
move.w d1,(a0)+
move.w d1,(a0)+
addi.w #$0202,d1
dbra d0,L000e7c
moveq.l #$ff,d1
IOCS _B_LOCATE
move.l d0,-(sp)
moveq.l #$ff,d1
moveq.l #$ff,d2
IOCS _B_CONSOL
movem.w d1-d2,-(sp)
move.w $00e82600,-(sp)
move.w $0836(a5),d1
IOCS _CRTMOD
bclr.b #$01,$00e8e007
move.w (sp)+,$00e82600
moveq.l #$ff,d1
moveq.l #$ff,d2
IOCS _B_CONSOL
move.w (sp)+,d1
move.w (sp)+,d2
IOCS _B_CONSOL
movem.w (sp)+,d1-d2
IOCS _B_LOCATE
move.w $0834(a5),d0
move.b d0,$00e80028
move.b d0,$00e82401
ori.b #$0f,$00e82601
cmpi.b #$04,d0
bne L000ef6
ori.b #$10,$00e82601
L000ef6:
clr.b $00e82600
L000efc:
btst.l #$02,d7
bne L000f0a
pea.l $0842(a5)
DOS _PRINT
addq.w #4,sp
L000f0a:
moveq.l #$00,d1
move.l d1,d2
move.l d1,d3
move.l d1,d4
move.l d1,d5
move.l d1,d6
movea.l d1,a1
movea.l d1,a2
movea.l d1,a3
movea.l d1,a4
movea.l d1,a6
movea.l $0802(a5),a0
btst.l #$0f,d7
beq L000f88
move.l d6,d7
move.w $0830(a5),d0
cmp.w $082a(a5),d0
bge L000f3a
move.w $082a(a5),d0
L000f3a:
mulu.w $0832(a5),d0
adda.l d0,a0
divu.w #$0200,d0
subq.w #1,d0
bcs L000f78
L000f48:
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1,-(a0)
dbra d0,L000f48
L000f78:
swap.w d0
subq.w #1,d0
bcs L000f84
L000f7e:
move.b d1,-(a0)
dbra d0,L000f7e
L000f84:
bra L0010c6
L000f88:
btst.l #$01,d7
bne L000fd2
move.l d6,d7
move.w $0830(a5),d0
mulu.w $0832(a5),d0
adda.l d0,a0
move.w #$03ff,d0
L000f9e:
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1-a4/a6,-(a0)
movem.l d1-d7/a1,-(a0)
dbra d0,L000f9e
bra L0010c6
L000fd2:
move.l $0820(a5),d0
move.w $0828(a5),d2
add.w d2,d0
add.w d0,d0
move.l $0824(a5),d1
move.w $082a(a5),d2
add.w d2,d1
subq.w #1,d1
mulu.w $0832(a5),d1
add.l d0,d1
adda.l d1,a0
move.w $0828(a5),d0
andi.w #$000f,d0
add.w d0,d0
eori.w #$001e,d0
lea.l L00101e(pc,d0.w),a1
move.w $0828(a5),d0
lsr.w #4,d0
moveq.l #$20,d1
sub.w d0,d1
lsl.w #2,d1
lea.l L00103e(pc,d1.w),a2
moveq.l #$00,d2
move.w $082a(a5),d0
subq.w #1,d0
L00101c:
jmp (a1)
L00101e:
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
move.w d2,-(a0)
jmp (a2)
L00103e:
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
movem.l d2-d6/a3-a4/a6,-(a0)
suba.w $082c(a5),a0
dbra d0,L00101c
L0010c6:
movem.l (sp)+,d0-d7/a0-a6
rts
L0010cc:
movea.l a5,a0
moveq.l #$00,d0
moveq.l #$f8,d1
moveq.l #$08,d2
moveq.l #$00,d3
moveq.l #$7f,d4
L0010d8:
move.w d0,(a0)+
move.w d1,(a0)+
move.w d2,(a0)+
move.w d3,(a0)+
addq.w #8,d1
addq.w #8,d2
dbra d4,L0010d8
move.w #$03f8,$0002(a5)
move.w d3,-$0004(a0)
move.w d3,$0800(a5)
rts
L0010f8:
movea.l $080e(a5),a4
moveq.l #$00,d2
bsr L0012ba
move.w $082a(a5),d0
subq.w #1,d0
L001108:
move.w d0,-(sp)
moveq.l #$00,d4
move.w $0828(a5),d4
L001110:
cmp.l d4,d3
blt L001120
sub.l d4,d3
move.w d4,d0
bsr L00125c
bra L00124e
L001120:
sub.w d3,d4
tst.w d3
beq L00112c
move.w d3,d0
bsr L00125c
L00112c:
dbra d7,L00113c
moveq.l #$0f,d7
subq.l #2,d6
bcc L00113a
bsr L001372
L00113a:
move.w (a6)+,d5
L00113c:
btst.l d7,d5
beq L001198
subq.w #7,d7
bcc L001154
add.w #$0010,d7
subq.l #2,d6
bcc L001150
bsr L001372
L001150:
swap.w d5
move.w (a6)+,d5
L001154:
move.l d5,d0
lsr.l d7,d0
andi.w #$007f,d0
lsl.w #3,d0
lea.l $00(a5,d0.w),a0
cmp.w $0800(a5),d0
beq L001194
move.w $0002(a0),d1
move.w $0004(a0),d2
move.w d1,$02(a5,d2.w)
move.w d2,$04(a5,d1.w)
move.w $0800(a5),d1
move.w $04(a5,d1.w),d2
move.w d1,$0002(a0)
move.w d2,$0004(a0)
move.w d0,$02(a5,d2.w)
move.w d0,$04(a5,d1.w)
move.w d0,$0800(a5)
L001194:
move.w (a0),d2
bra L0011c4
L001198:
sub.w #$000f,d7
bcc L0011ae
add.w #$0010,d7
subq.l #2,d6
bcc L0011aa
bsr L001372
L0011aa:
swap.w d5
move.w (a6)+,d5
L0011ae:
move.l d5,d2
lsr.l d7,d2
add.w d2,d2
move.w $0800(a5),d0
move.w $04(a5,d0.w),d0
move.w d0,$0800(a5)
move.w d2,$00(a5,d0.w)
L0011c4:
movea.l a4,a3
move.w d2,(a4)+
subq.w #1,d4
dbra d7,L0011da
moveq.l #$0f,d7
subq.l #2,d6
bcc L0011d8
bsr L001372
L0011d8:
move.w (a6)+,d5
L0011da:
btst.l d7,d5
beq L001246
addq.w #1,d2
movea.w $0832(a5),a0
L0011e4:
subq.w #2,d7
bcc L0011f8
add.w #$0010,d7
subq.l #2,d6
bcc L0011f4
bsr L001372
L0011f4:
swap.w d5
move.w (a6)+,d5
L0011f8:
move.l d5,d0
lsr.l d7,d0
andi.w #$0003,d0
beq L00120e
add.w d0,d0
subq.w #4,d0
adda.w a0,a3
adda.w d0,a3
move.w d2,(a3)
bra L0011e4
L00120e:
dbra d7,L00121e
moveq.l #$0f,d7
subq.l #2,d6
bcc L00121c
bsr L001372
L00121c:
move.w (a6)+,d5
L00121e:
btst.l d7,d5
beq L001244
adda.w a0,a3
dbra d7,L001234
moveq.l #$0f,d7
subq.l #2,d6
bcc L001232
bsr L001372
L001232:
move.w (a6)+,d5
L001234:
btst.l d7,d5
bne L00123e
subq.w #4,a3
move.w d2,(a3)
bra L0011e4
L00123e:
addq.w #4,a3
move.w d2,(a3)
bra L0011e4
L001244:
subq.w #1,d2
L001246:
bsr L0012ba
tst.w d4
bne L001110
L00124e:
adda.w $082c(a5),a4
move.w (sp)+,d0
dbra d0,L001108
moveq.l #$00,d0
rts
L00125c:
subq.w #2,d0
bcs L0012a8
lsr.w #1,d0
bcc L001270
move.w (a4),d1
beq L00126e
move.w d1,d2
andi.w #$fffe,d2
L00126e:
move.w d2,(a4)+
L001270:
move.w d2,d1
swap.w d2
move.w d1,d2
bra L00127a
L001278:
move.l d2,(a4)+
L00127a:
move.l (a4),d1
dbne d0,L001278
swap.w d1
tst.w d1
beq L00128c
move.w d1,d2
andi.w #$fffe,d2
L00128c:
move.w d2,(a4)+
swap.w d1
tst.w d1
beq L00129a
move.w d1,d2
andi.w #$fffe,d2
L00129a:
move.w d2,(a4)+
move.w d2,d1
swap.w d2
move.w d1,d2
subq.w #1,d0
bpl L00127a
rts
L0012a8:
addq.w #1,d0
bne L0012b8
move.w (a4),d1
beq L0012b6
move.w d1,d2
andi.w #$fffe,d2
L0012b6:
move.w d2,(a4)+
L0012b8:
rts
L0012ba:
moveq.l #$00,d0
L0012bc:
addq.w #1,d0
dbra d7,L0012ce
moveq.l #$0f,d7
subq.l #2,d6
bcc L0012cc
bsr L001372
L0012cc:
move.w (a6)+,d5
L0012ce:
btst.l d7,d5
bne L0012bc
moveq.l #$01,d3
lsl.l d0,d3
subq.l #1,d3
cmpi.w #$0011,d0
bcc L0012fe
sub.w d0,d7
bcc L0012f2
add.w #$0010,d7
subq.l #2,d6
bcc L0012ee
bsr L001372
L0012ee:
swap.w d5
move.w (a6)+,d5
L0012f2:
move.l d5,d1
lsr.l d7,d1
and.l d3,d1
add.l d1,d3
subq.l #1,d3
rts
L0012fe:
sub.w #$0010,d0
sub.w d0,d7
bcc L001314
add.w #$0010,d7
subq.l #2,d6
bcc L001310
bsr L001372
L001310:
swap.w d5
move.w (a6)+,d5
L001314:
move.l d5,d1
lsr.l d7,d1
sub.w #$0010,d7
bcc L00132c
add.w #$0010,d7
subq.l #2,d6
bcc L001328
bsr L001372
L001328:
swap.w d5
move.w (a6)+,d5
L00132c:
move.l d5,d0
lsr.l d7,d0
swap.w d1
move.w d0,d1
and.l d3,d1
add.l d1,d3
subq.l #1,d3
rts
L00133c:
moveq.l #$00,d0
subq.w #8,d7
bcc L001350
add.w #$0010,d7
subq.l #2,d6
bcc L00134c
bsr L001372
L00134c:
swap.w d5
move.w (a6)+,d5
L001350:
move.l d5,d0
lsr.l d7,d0
rts
L001356:
moveq.l #$00,d0
sub.w #$0010,d7
bcc L00136c
add.w #$0010,d7
subq.l #2,d6
bcc L001368
bsr L001372
L001368:
swap.w d5
move.w (a6)+,d5
L00136c:
move.l d5,d0
lsr.l d7,d0
rts
L001372:
move.l d0,-(sp)
tst.b $083a(a5)
bne L0014a8
movea.l $0806(a5),a6
move.l $0816(a5),-(sp)
move.l a6,-(sp)
move.w $081e(a5),-(sp)
DOS _READ
addq.w #6,sp
cmp.l (sp)+,d0
beq L0013a0
tst.l d0
bmi L0014ae
beq L0014a8
st.b $083a(a5)
L0013a0:
addq.l #1,d0
andi.b #$fe,d0
add.l d0,d6
move.l (sp)+,d0
rts
L0013ac:
movem.l d1-d7/a0-a1,-(sp)
move.l $081a(a5),d0
btst.l #$03,d0
bne L00148e
movea.l $080e(a5),a0
move.w $0828(a5),d5
move.w d5,d0
tst.b $083c(a5)
beq L001400
add.w d0,d0
adda.w d0,a0
movea.l a0,a1
adda.w d0,a1
move.w $082a(a5),d0
subq.w #1,d0
L0013da:
movem.l a0-a1,-(sp)
move.w $0828(a5),d1
subq.w #1,d1
L0013e4:
move.w -(a0),d2
move.w d2,-(a1)
move.w d2,-(a1)
dbra d1,L0013e4
movem.l (sp)+,a0-a1
adda.w $0832(a5),a0
adda.w $0832(a5),a1
dbra d0,L0013da
add.w d5,d5
L001400:
move.w d5,d0
move.l d0,d6
move.w #$0080,d7
tst.b $083c(a5)
bne L00141e
tst.b $083d(a5)
bne L00141e
move.w #$00d4,d7
tst.b $083e(a5)
beq L00148e
L00141e:
move.l $0824(a5),d0
mulu.w #$0100,d0
divu.w d7,d0
add.w $082a(a5),d0
subq.w #1,d0
mulu.w $0832(a5),d0
add.l $0820(a5),d0
add.l $0820(a5),d0
movea.l d0,a0
adda.l $0802(a5),a0
move.l $0824(a5),d0
add.w $082a(a5),d0
mulu.w #$0100,d0
divu.w d7,d0
subq.w #1,d0
move.l d0,d1
mulu.w $0832(a5),d0
add.l $0820(a5),d0
add.l $0820(a5),d0
movea.l d0,a1
adda.l $0802(a5),a1
moveq.l #$80,d0
sub.w $0824(a5),d1
subq.w #1,d1
L00146c:
movem.l a0-a1,-(sp)
move.w d6,d2
subq.w #1,d2
L001474:
move.w (a0)+,(a1)+
dbra d2,L001474
movem.l (sp)+,a0-a1
sub.b d7,d0
bcc L001486
suba.w $0832(a5),a0
L001486:
suba.w $0832(a5),a1
dbra d1,L00146c
L00148e:
movem.l (sp)+,d1-d7/a0-a1
moveq.l #$00,d0
rts
L001496:
moveq.l #$86,d0
bra L000aa2
L00149c:
moveq.l #$85,d0
bra L000aa2
L0014a2:
moveq.l #$87,d0
bra L000aa2
L0014a8:
moveq.l #$88,d0
bra L000aa2
L0014ae:
bra L000aa2
_APICG:
.dc.b 'Advanced PIC Loader/Saver Library 「APICGLIB.a」',$0d,$0a
.dc.b '(C)1990-1994 GORRY.',$0d,$0a,$00
_APGVER:
.dc.b '2.11A',$00
.even